package com.xinqi.modules.homework.homework.domain;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xinqi.common.mybatis.data.entity.BaseEntity;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;

/**
 * 作业学生提交记录表实体层
 *
 * @author: system
 * @date: 2023/03/09
 */
@Setter
@Getter
@TableName("co_course_homework_record")
public class CourseHomeworkRecordEntity extends BaseEntity {
    /**
     * 班级ID
     */
    @TableField(value = "class_id")
    private Long classId;
    /**
     * 作业基础表ID
     */
    @TableField(value = "content_id")
    private Long contentId;
    /**
     * 作业轮数
     */
    @TableField(value = "times")
    private Integer times;
    /**
     * 学生ID
     */
    @TableField(value = "student_id")
    private Long studentId;
    /**
     * 作业标题
     */
    @TableField(value = "hand_title")
    private String handTitle;
    /**
     * 作业提交时间
     */
    @TableField(value = "hand_time")
    private LocalDateTime handTime;

    /**
     * 提交内容
     */
    @TableField(value = "hand_content")
    private String handContent;
    /**
     * 作业备注 学生
     */
    @TableField(value = "student_remark")
    private String studentRemark;
    /**
     * 作业 得分
     */
    @TableField(value = "student_score")
    private String studentScore;
    /**
     * 作业留言 老师
     */
    @TableField(value = "teacher_remark")
    private String teacherRemark;
    /**
     * 老师评语
     */
    @TableField(value = "teacher_comment", updateStrategy = FieldStrategy.IGNORED)
    private String teacherComment;
    /**
     * 是否打回 0否 1是
     */
    @TableField(value = "is_repulse")
    private Integer isRepulse;
    /**
     * 打回理由
     */
    @TableField(value = "repulse_reason", updateStrategy = FieldStrategy.IGNORED)
    private String repulseReason;
    /**
     * 文档字数
     */
    @TableField(value = "font_num")
    private Long fontNum;
    /**
     * 获取上传文本内容用于查重编译的simhash
     */
    @TableField(value = "simhash")
    private String simhash;
    /**
     * 查重率
     */
    @TableField(value = "simhash_rate")
    private Integer simhashRate;
    /**
     * 查重率
     */
    @TableField(value = "in_progerss")
    private Integer inProgerss;

    /**
     * 作业提交状态(0未提交，1已提交，2-被打回，3-已阅，4已批)
     */
    @TableField(value = "task_status")
    private Integer taskStatus;

    /**
     * 提交作业人关系
     */
    @TableField(value = "opera_relationship")
    private String operaRelationship;

    /**
     * 视频、音频
     */
    @TableField(value = "videos", updateStrategy = FieldStrategy.IGNORED)
    private String videos;
}
